﻿
Public Class PersonalInterview
    Inherits InterviewData

    Private _firstName As String
    Private _lastName As String
    Private _middleName As String
    Private _salutation As String
    Private _suffix As String
    Private _alias As String
    Private _birthDate As String
    Private _gender As String
    Private _sin As String
    Private _phone As String
    Private _clientID As String
    Private _entryDate As String
    Private _firstPlacementDate As String
    Private _interviewDate As String
    Private _email As String

    Public Const MALE As String = "Male"
    Public Const FEMALE As String = "Female"
    Public Const TRANSSEXUAL As String = "Transsexual"
    Public Const TRANSGENDER As String = "Transgender"

    Public Sub New()

    End Sub
    Public Sub New(ByVal data As InterviewData)
        If (Not IsNothing(data)) Then
            Me.AnswersText = data.AnswersText
            Me.QuestionsText = data.QuestionsText
            Me.TemplateID = data.TemplateID
        End If
        
    End Sub

    Public Property FirstName() As String
        Get
            Return _firstName
        End Get
        Set(ByVal value As String)
            _firstName = value
        End Set
    End Property

    Public Property LastName() As String
        Get
            Return _lastName
        End Get
        Set(ByVal value As String)
            _lastName = value
        End Set
    End Property
    Public Property MiddleName() As String
        Get
            Return _middleName
        End Get
        Set(ByVal value As String)
            _middleName = value
        End Set
    End Property

    Public Property Salutation() As String
        Get
            Return _salutation
        End Get
        Set(ByVal value As String)
            _salutation = value
        End Set
    End Property
    Public Property Suffix() As String
        Get
            Return _suffix
        End Get
        Set(ByVal value As String)
            _suffix = value
        End Set
    End Property
    Public Property OtherAlias() As String
        Get
            Return _alias
        End Get
        Set(ByVal value As String)
            _alias = value
        End Set
    End Property
    Public Property BirthDate() As String
        Get
            Return _birthDate
        End Get
        Set(ByVal value As String)
            _birthDate = value
        End Set
    End Property
    Public Property Gender() As String
        Get
            Return _gender
        End Get
        Set(ByVal value As String)
            _gender = value
        End Set
    End Property
    Public Property sin() As String
        Get
            Return _sin
        End Get
        Set(ByVal value As String)
            _sin = value
        End Set
    End Property
    Public Property Phone() As String
        Get
            Return _phone
        End Get
        Set(ByVal value As String)
            _phone = value
        End Set
    End Property

    Public Property IsMale() As Boolean
        Get
            If (String.IsNullOrEmpty(Gender)) Then
                Return False
            End If
            Return Gender.Trim() = MALE
        End Get
        Set(ByVal value As Boolean)
            If (value) Then
                Gender = MALE
            End If

        End Set
    End Property
    Public Property IsFemale() As Boolean
        Get
            If (String.IsNullOrEmpty(Gender)) Then
                Return False
            End If
            Return Gender.Trim() = FEMALE
        End Get
        Set(ByVal value As Boolean)
            If (value) Then
                Gender = FEMALE
            End If

        End Set
    End Property
    Public Property IsTranssexual() As Boolean
        Get
            If (String.IsNullOrEmpty(Gender)) Then
                Return False
            End If
            Return Gender.Trim() = TRANSSEXUAL
        End Get
        Set(ByVal value As Boolean)
            If (value) Then
                Gender = TRANSSEXUAL
            End If

        End Set
    End Property
    Public Property IsTransgender() As Boolean
        Get
            If (String.IsNullOrEmpty(Gender)) Then
                Return False
            End If
            Return Gender.Trim() = TRANSGENDER
        End Get
        Set(ByVal value As Boolean)
            If (value) Then
                Gender = TRANSGENDER
            End If


        End Set
    End Property

    Public Property ClientID() As String
        Get
            Return _clientID
        End Get
        Set(ByVal value As String)
            _clientID = value
        End Set
    End Property

    Public Property EntryDate() As String
        Get
            Return _entryDate
        End Get
        Set(ByVal value As String)
            _entryDate = value
        End Set
    End Property

    Public Property FirstPlacementDate() As String
        Get
            Return _firstPlacementDate
        End Get
        Set(ByVal value As String)
            _firstPlacementDate = value
        End Set
    End Property

    Public Property InterviewDate() As String
        Get
            Return _interviewDate
        End Get
        Set(ByVal value As String)
            _interviewDate = value
        End Set
    End Property

    Public Property Email() As String
        Get
            Return _email
        End Get
        Set(ByVal value As String)
            _email = value
        End Set
    End Property
End Class
